/*
 * Copyright 2022,2023 NXP.
 *
 * NXP Confidential. This software is owned or controlled by NXP and may only be
 * used strictly in accordance with the applicable license terms. By expressly
 * accepting such terms or by downloading,installing, activating and/or otherwise
 * using the software, you are agreeing that you have read,and that you agree to
 * comply with and are bound by, such license terms. If you do not agree to be
 * bound by the applicable license terms, then you may not retain, install, activate
 * or otherwise use the software.
 *
 */

#ifndef UWBRADAR_COMMON_H
#define UWBRADAR_COMMON_H

#include <stdlib.h>
#include <stdbool.h>
#include <stdint.h>

/** \addtogroup uwbradar_apis
 *
 * @{ */
/**
 * @brief  Enumeration lists out the Radar Api Status.
 */
typedef enum _common_radarapi_return_status
{
    /** Generic status for Success. */
    kStatus_Success = 0,
    /** Generic status for Fail */
    kStatus_Fail,
    /** Generic status for Invalid */
    kStatus_Invalid
} common_radarapi_return_status_t;

/**
 * @brief  This API takes CIR sample as input and applies the breathing/Presence detection algorithms and provides the results via callbacks.
 *         `bd_Measurement_callback_t` and `pd_Measurement_callback_t`
 *
 * \param[in]  cir_data of Radar Notification.
 * \param[in]  length of the cir data.
 */

void UwbRadarApi_SendCirSample(uint8_t cir_data[], uint16_t length);

/** @} */ /* @addtogroup uwbradar_apis */
#endif //UWBRADAR_COMMON_H